﻿using Magicodes.ExporterAndImporter.Core;
using Magicodes.ExporterAndImporter.Excel;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Text;

namespace NP.BPMReportPlatform.CustomerProfileConfig.Dto
{
    /// <summary>
    /// 客户档案基本信息导入
    /// IsLabelingError：是否标注数据错误
    /// </summary>
    [ExcelImporter(IsLabelingError = true, SheetName = "客户档案基本信息")]
    public class ImportCustomerProfileConfigTemplate
    {
        /// <summary>
        /// 事业部
        /// </summary>
        [ImporterHeader(Name = "事业部")]
        [Required(ErrorMessage = "事业部不能为空")]
        public string Business { get; set; }

        /// <summary>
        /// 行业
        /// </summary>
        [ImporterHeader(Name = "行业")]
        [Required(ErrorMessage = "行业不能为空")]
        public string Industry { get; set; }

        /// <summary>
        /// 区域
        /// </summary>
        [ImporterHeader(Name = "区域")]
        [Required(ErrorMessage = "区域不能为空")]
        public string Area { get; set; }

        /// <summary>
        /// 客户类型
        /// </summary>
        [ImporterHeader(Name = "客户类型")]
        [Required(ErrorMessage = "客户类型不能为空")]
        public string CustomerType { get; set; }

        /// <summary>
        /// 送达方代码
        /// </summary>
        [ImporterHeader(Name = "送达方代码")]
        public string CustomerCode { get; set; }

        /// <summary>
        /// 送达方名称
        /// </summary>
        [ImporterHeader(Name = "送达方名称")]
        public string CustomerName { get; set; }

        /// <summary>
        /// 售达方代码
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        public string SDFCode2 { get; set; }

        /// <summary>
        /// 售达方名称
        /// </summary>
        [IEIgnore(IsExportIgnore = true)]
        public string SDFName2 { get; set; }

        /// <summary>
        /// 产线名称
        /// </summary>
        [ImporterHeader(Name = "产线名称")]
        [Required(ErrorMessage = "产线名称不能为空")]
        public string ProductionLine { get; set; }

        /// <summary>
        /// 客户归属
        /// </summary>
        [ImporterHeader(Name = "客户归属")]
        public string CustomerAttribution { get; set; }

        /// <summary>
        /// 状态
        /// </summary>
        [ImporterHeader(Name = "状态")]
        [Required(ErrorMessage = "状态不能为空")]
        public string State { get; set; }

        /// <summary>
        /// 建浴（混槽）日期
        /// </summary>
        [ImporterHeader(Name = "建浴（混槽）日期")]
        public string JYDate { get; set; }

        /// <summary>
        /// 投槽/混槽
        /// </summary>
        [ImporterHeader(Name = "投槽/混槽")]
        [Required(ErrorMessage = "投槽/混槽不能为空")]
        public string TCORHC { get; set; }

        /// <summary>
        /// 客户省份
        /// </summary>
        [ImporterHeader(Name = "客户省份")]
        public string Province { get; set; }

        /// <summary>
        /// 客户城市
        /// </summary>
        [ImporterHeader(Name = "客户城市")]
        public string City { get; set; }

        /// <summary>
        /// 标准槽液检测频次/月
        /// </summary>
        [ImporterHeader(Name = "标准槽液检测频次/月")]
        [Required(ErrorMessage = "标准槽液检测频次/月不能为空")]
        public string TestingFrequency { get; set; }

        /// <summary>
        /// 技术工号/域账号
        /// </summary>
        [ImporterHeader(Name = "技术工号/域账号")]
        [Required(ErrorMessage = "技术工号/域账号不能为空")]
        public string JSDDCode { get; set; }

        /// <summary>
        /// 销售工号/域账号
        /// </summary>
        [ImporterHeader(Name = "销售工号/域账号")]
        [Required(ErrorMessage = "销售工号/域账号不能为空")]
        public string XSDDCode { get; set; }
    }
    /// <summary>
    /// 检测指标导入
    /// IsLabelingError：是否标注数据错误
    /// </summary>
    [ExcelImporter(IsLabelingError = true, SheetName = "检测指标")]
    public class ImportCustomerProfileConfigDetailTemplate
    {
        /// <summary>
        /// 试验项目1
        /// </summary>
        [ImporterHeader(Name = "试验项目1")]
        
        public string Project1 { get; set; }

        /// <summary>
        /// 试验项目2
        /// </summary>
        [ImporterHeader(Name = "试验项目2")]
        
        public string Project2 { get; set; }

        /// <summary>
        /// 试验项目3
        /// </summary>
        [ImporterHeader(Name = "试验项目3")]
        public string Project3 { get; set; }

        /// <summary>
        /// 最小值
        /// </summary>
        [ImporterHeader(Name = "最小值")]
        public string MinValue { get; set; }

        /// <summary>
        /// 最大值
        /// </summary>
        [ImporterHeader(Name = "最大值")]
        public string MaxValue { get; set; }

        /// <summary>
        /// 标准值
        /// </summary>
        [ImporterHeader(Name = "标准值")]
        public string StandardValue { get; set; }

        /// <summary>
        /// 是否启用项
        /// </summary>
        [ImporterHeader(Name = "是否启用项")]
        public string IsEnable { get; set; }
    }
}
